Для расчета стоимости доставки требуется знать вес товара и его габариты (или объем), но даже при отсутствии этих параметров вы можете указать дефолтные значения. Можно использовать курьерскую доставку, пункты выдачи заказов (далее ПВЗ) или сразу и то и другое, на усмотрение клиента. Международная доставка скриптом не предусмотрена, только Россия, Украина, Беларусь, Казахстан, Армения и Киргизия.
Вы можете сами увидеть все своими глазами на демо-сайте.























.ui-autocomplete{position:absolute;top:0;left:0;cursor:default;background:#fff;border:1px solid #ccc;max-height:200px;overflow-y:auto;overflow-x:hidden;}
.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:none}
.ui-menu .ui-menu{position:absolute}
.ui-menu .ui-menu-item{position:relative;padding:3px 1em 3px .4em;margin:0px;cursor:pointer;min-height:0;list-style:none;display:block}
.ui-menu .ui-menu-item:hover{background: #e6e6e6}
.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}
.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:0px}
.ui-menu .ui-menu-icon{left:auto;right:0}
.ui-autocomplete-loading{background: #fff url('//s26.ucoz.net/img/icon/ajsml.gif') center right no-repeat !important;}
#cdek {width:300px;}
ui-autocomplete
– выпадающее окно со списком городов;
ui-autocomplete-loading
– состояние окна при загрузке списка;
ui-menu
– список городов;
ui-menu-item
– отдельный пункт в списке;
#cdek
– поле ввода города доставки;
<?if($PAGE_ID$=='checkout')?>
<script src="/js/jquery-ui.min.js"></script>
<script>
var all_weight = $ORDER_WEIGHT$;
var all_price = $ORDER_AMOUNT_RAW$;
$(function() {
var label = $("#delivery-cdek").closest('tr').attr('id').split('-');
$.ajax({
url: '/php/cdek/init.php',
type: 'POST',
data: {delivery_id:label[2], weight: all_weight, price: all_price},
dataType: 'script'
})
});
</script>
<?endif?>
Намите на ссылку "Добавить способ доставки", введите название способа доставки, например "Доставка ТК "CDEK" и сохраните.
После вашего описания доставки добавьте код
<div id="delivery-cdek"></div>

Активируйте галочку напротив пункта "Использовать модуль расчёта стоимости доставки", в выпадающем списке выберите "Внешний калькулятор". Далее нажимаем "Настройки модуля" и в появившемся окне ставим галочку "Разрешить нулевую величину". Сохраняем.